home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Linux Cubed Series 7: Sunsite
/
Linux Cubed Series 7 - Sunsite Vol 1.iso
/
libs
/
libmodem.99
< prev
next >
Wrap
Text File
|
1996-11-17
|
3KB
|
81 lines
LIBMODEM
Version: 0.99.2 (ALPHA)
Author: Riccardo Facchetti
e-mail: riccardo@cdc8g5.cdc.polimi.it
Copyright: (C) 1994, 1995 Riccardo Facchetti under the terms of the
GNU Library General Public Licence
WHAT IS THIS ?
libmodem.a is a library that allow you to use your modems transparently with
regard of kind of modem attached to a line. You have just to
int fd;
...
fd = dial("Some-phone-number");
...
and it will return to you a file descriptor of the dialed line.
To hangup just hangup(fd).
Of course, you have to configure all your modem lines in the /etc/modems file to
allow the library know which modem lines it can use to dial.
NOTES:
libmodem is written for Linux, but i think you can easily port this package on
other platforms (that have POSIX_TERMIOS of course :))
This is an ALPHA version of the code, developed as modem library for another
package. The library libmodem is distributed as a package, subjected to the
GNU LIBRARY GENERAL PUBLIC LICENSE
This package permit dialout only (for now). In the future, i think i will write
the routines that manage dialin connections too.
TANKS:
Some parts of the code (mainly termios setup) are based on the work
of Gert Doering (mgetty-0.21):
thanks Gert, without your code i couldn't write down the termios spaghetti.
In no way Gert is responsible for the pieces of code i'd stole from his mgetty.
HISTORY:
I needed a modem library that with a single function call allows me to
dial a remote modem, and returns a file descriptor that i can use,
dupping it to stdin and stdout. This is a part of a project of
communication software: a 2nd level password protection for a Linux box
used as terminal server (here in Italy we still have not enabled the CallerID).
I've searched for such a modem package and i've found a little but promising
package called libmodemcap. It is a package that manage modems with a file
a la termcap. After unpacking and examination of the package i've pointed
out at least two important things that make libmodemcap not the Right Thing for
me:
1) It have little or nothing at all control over modem talking (here i mean
write INIT string
Wait 'OK'
Check 'OK'
write CALL string
Wait 'CONNECT'
Check 'CONNECT'
write HANGUP string
Wait 'OK' ... maybe
Check 'OK' ... maybe
)
It lacks 'Wait <something>' just to be sure the modem have done what you
just asked it to do; was a little problem, but present (to be truth that was
a major problem for me: i don't want a modem be hung without a way to know
that it must be reset!!!).
2) Look at its copyright. It is not GPL, it is something i don't like too much.
3) ...
Anyway thanks to John F. Haugh II (the author of libmodemcap) for having made me
write this package (in fact i don't know him, i never heard nothing about him,
and i suppose he's never heard nothing about me :)
JUST ANOTHER WORD:
The decision to write libmodem was not only reached for the above reasons.
I have not found a similar package in the Linux distributions and ftp sites.
So I've written this package for the Linux community.
Guys, enjoy it!